<?php namespace Common\Model;
use Hdphp\Model\Model;
//品牌管理模型
class Brand extends Model{
	//指定表名 固定写法
	protected $table = "brand";
	//自动验证
	protected $validate = array(
		//品牌名称
		array('bname','required','品牌名称不为空',3,3)
	);
	//自动完成
	protected $auto = array(
		//Logo
		array('logo','logo','method',3,3)
	);
	//处理Logo
	public function logo(){
		//如果有文件上传
		//如果是编辑的时候，只显示图片的时候，没有file类型的表单，所以是不存在$_FILES['logo']
		if(isset($_FILES['logo']) && $_FILES['logo']['error'] != 4){
			//执行上传类
			$files = Upload::type('jpg,png,gif,jpeg')->size(2000000)->make();
			//如果上传成功，返回对应的路径
			if($files){
				//处理缩略的文件名
				$newPath = str_replace('.' . $files[0]['ext'], '_logo.' . $files[0]['ext'], $files[0]['path']);
				//缩略，返回缩略图的地址
				$logoPath = Image::thumb($files[0]['path'],$newPath,200,200,2);
				//存到数据库
				return $logoPath;
			}
		}
		//编辑的时候:如果有隐藏域($_POST['logo'])的时候，那么就是返回旧地址
		if($logo = Q('post.logo')){
			return $logo;
		}	
		//如果用户没有上传，则返回空字符串存入数据
		return '';
	}
	//添加方法
	public function store(){
		//验证未通过
		if(!$this->create()) return false;
		//上传未通过
		if($error = Upload::getError()){
			//给当前模型压入错误
			$this->error = $error;
			return false;
		}
		//添加成功 返回主键ID
		$bid = $this->add();
		return true;
	}
	//编辑方法
	public function edit(){
		//验证未通过
		if(!$this->create()) return false;
		//上传未通过
		if($error = Upload::getError()){
			//给当前模型压入错误
			$this->error = $error;
			return false;
		}
		//修改
		$this->save();
		return true;
	}
	
} 
	
?>